namespace Fuse8.ContentManagementFramework.SystemFacade
{
    /// <summary>
    /// Contract for custom route data
    /// </summary>
    public interface ICustomRouteData
    {
        /// <summary>
        /// Gets public id of CmsPage to rewrite current request
        /// </summary>
        int? PublicCmsPageId { get; }        
        
        /// <summary>
        /// Defualt route data
        /// </summary>
        object Defaults { get; }

        /// <summary>
        /// Indicates if it is necessary to use file cache
        /// </summary>
        bool UseFileCache { get; }

        /// <summary>
        /// Url of current request
        /// </summary>
        string Url { get; }
    }
}